;(function() {
  var utils = baidu.editor.utils,
    uiUtils = baidu.editor.ui.uiUtils,
    UIBase = baidu.editor.ui.UIBase,
    Toolbar = (baidu.editor.ui.Toolbar = function(options) {
      this.initOptions(options);
      this.initToolbar();
    });
  Toolbar.prototype = {
    items: null,
    initToolbar: function() {
      this.items = this.items || [];
      this.initUIBase();
    },
    add: function(item, index) {
      if (index === undefined) {
        this.items.push(item);
      } else {
        this.items.splice(index, 0, item);
      }
    },
    getHtmlTpl: function() {
      var buff = [];
      for (var i = 0; i < this.items.length; i++) {
        buff[i] = this.items[i].renderHtml();
      }
      return (
        '<div id="##" class="edui-toolbar %%" onselectstart="return false;" onmousedown="return $$._onMouseDown(event, this);">' +
        buff.join("") +
        "</div>"
      );
    },
    postRender: function() {
      var box = this.getDom();
      for (var i = 0; i < this.items.length; i++) {
        this.items[i].postRender();
      }
      uiUtils.makeUnselectable(box);
    },
    _onMouseDown: function(e) {
      var target = e.target || e.srcElement,
        tagName = target && target.tagName && target.tagName.toLowerCase();
      if (tagName == "input" || tagName == "object" || tagName == "object") {
        return false;
      }
    }
  };
  utils.inherits(Toolbar, UIBase);
})();
